package com.lsh.payment.core.handler;

import com.lsh.payment.api.model.basevo.BaseResponse;
import com.lsh.payment.api.model.refund.RefundResponse;
import com.lsh.payment.core.model.payment.PayDeal;
import com.lsh.payment.core.model.refund.PayRefund;

/**
 * Project Name: lsh-payment
 *
 * @author peter
 * @date 18/6/1
 * 北京链商电子商务有限公司
 * Package
 * desc:
 */
public interface IRefundChannelHandler {

    /**
     * 第三方支付退款 下单接口
     * @param payRefund      退款记录信息
     * @param payDeal        支付记录信息
     * @return               退款下单返回信息
     */
    RefundResponse refund(PayRefund payRefund, PayDeal payDeal);

    /**
     * 第三方支付 退款查询接口
     * @param payRefund        退款记录信息
     * @param payDeal          支付记录信息
     * @return                 退款查询返回信息
     */
    BaseResponse refundQuery(PayRefund payRefund,PayDeal payDeal);
}
